/*
  加载下一页数据：
    找到滚动条触底事件
    判断有没有下一页数据
    如果没有的话，弹出一个提示
    反之，加载下一页数据

    下拉刷新:
      1.触发下拉刷新事件
      2.重置 数据 数组
      3.重置页码为1

*/
import { request } from '../../request/index.js';
Page({
  data: {
    tabs:[
      {
        id: 0,
        value:'综合',
        isActive: true
      },
      {
        id: 1,
        value:'销量',
        isActive: false
      },
      {
        id: 2,
        value:'价格',
        isActive: false
      }
    ],
    //存入goods
    goods:[],
  },
  queryParams: {
    query:"",
    cid:"",
    pagenum:"",
    pagesize:10
  },
  //存放页数
  totalPages:0,
  onLoad:function(options) {
    this.queryParams.cid = options.cid;
    this.getGoodsList();
  },
  handleTabsItemChange(e) {
      //获取到index
      let {index} = e.detail;
      //改变当前的值
      let { tabs } = this.data;
      tabs.forEach((v,i)=> i===index?v.isActive=true:v.isActive=false);
      this.setData({
        tabs
      })
    },
    //发送请求
    getGoodsList() {
      request({url:"/goods/search",data:this.queryParams})
        .then(res => {
          this.totalPages = Math.ceil(res.data.message.total / this.queryParams.pagesize);
          console.log(this.totalPages)
          this.setData({
            goods:[...res.data.message.goods,...this.data]
          })
        })
        //关闭下拉刷新的动画
        wx.stopPullDownRefresh();
    },
    //页面触底事件
    onReachBottom() {
      // 当前页码 pagenum
      //判断是否有下一页
      if(this.queryParams.pagenum < this.totalPages-1) {
        //有下一页数据 当前页面++，重新获取数据
        console.log('he')
        this.queryParams.pagenum++;
        this.getGoodsList();
      }else {
        console.log('没有数据了');
        wx.showToast({
          title: '没有下一页数据了',
        })
      }
    },
    //下拉刷新事件
    onPullDownRefresh() {
      //1.重置数组
      this.setData({
        goods:[]
      });
      //重置页码
      this.queryParams.pagenum = 1;
      //重新发送请求
      this.getGoodsList();
    }
})